Configuration management of IP/MPLS router rings

ABSTRACT

The invention is directed to managing changes to a configuration of routers connected in a ring network architecture. Embodiments of the invention alleviate risks to services carried over a ring of IP/MPLS routers when configuration changes are made to the ring, such as inserting a router into, or removing a router from, the ring. To that end, embodiments of the invention automate some steps of such a configuration change operation that were previously performed manually, and coordinate those steps with other steps of the operation using a procedure stored as instructions on a computer readable media and executed by a computer system in order to effect and validate a correct sequencing of the steps.

FIELD OF THE INVENTION

The invention is directed to packet switching communication networks,particularly to managing the configuration of routers in a ring networkarchitecture.

BACKGROUND OF THE INVENTION

Internet Protocol (IP)/Multi Protocol Label Switching (MPLS) routersthat are communicatively connected in a ring network architecture,hereinafter also referred to as router rings, are commonly deployed inlocal access networks such as in Enterprise networks. Communicationtraffic between the router rings is provided by a Service Provider coreIP/MPLS network. Typically, the core network would support thousands ofsuch rings. Often, due to changes in networking requirements provided bysuch a router ring, a router must be added or removed from the ringwhile the ring is in operation, i.e. while the ring is carrying datapacket traffic. These operations are a combination of steps performed inthe field e.g. cutting fiber cables and physically inserting the router,and provisioning changes entered manually at a Network Management System(NMS) located in a central office. Typically, there can be approximately400 commands entered into the NMS to effect insertion of a router into arouter ring. Due to the potential for error that arises from thecomplexity of such an operation, there is a risk to services carried ona router ring when a router is being added to, or removed from, thering. Since any risk of service disruption is unwanted, it is desirableto reduce such risks when making changes to the configuration of routerrings, such as when inserting a router into, or removing a router from,a router ring.

SUMMARY

The invention is directed to managing changes to a configuration ofrouters connected in a ring network architecture.

Compared to prior art approaches, embodiments of the invention alleviaterisks to services carried over a ring of IP/MPLS routers whenconfiguration changes are made to the ring, such as inserting a routerinto, or removing a router from, the ring. To that end, embodiments ofthe invention automate some steps of such a configuration changeoperation that were previously performed manually, and coordinate thosesteps with other steps of the operation using a procedure stored asinstructions on a computer readable media and executed by a computersystem in order to effect and validate a correct sequencing of thesteps.

Some embodiments of the invention provide a service platform, or othersimilar computer system, for executing instructions stored on computerreadable media. The instructions, when executed, cause commands to besent to a NMS managing the router ring, thereby causing steps previouslyperformed manually to effect a ring configuration change to be performedautomatically, hence with less potential for error such as operatorkeystroke error. Furthermore, the instructions coordinate theautomatically performed steps with those performed manually in the fieldto indicate or otherwise ensure a correct sequencing of steps performed,as well as validating the manually performed steps before bringing theconfiguration changes into service.

In addition to reducing risk of disruption to services due to ringconfiguration changes, embodiments of the invention reduce the time andeffort required to make such changes. Furthermore, by virtue ofproviding a separate service platform that can be communicativelycoupled to an NMS managing a router ring, embodiments of the inventioncan be deployed in existing networks, whereby compatibility with variousnetwork management systems from a variety of vendors can be achieved viause of common commands or a command interpreter function in the serviceplatform. Further, in cases where the separate service platform isimplemented by a laptop computer or other type of portable computingsystem, the service platform can be used in the field by a person makingconfiguration changes there to a router ring, thereby enabling theconfiguration change operation to be performed faster, more easily, andwith less risk of disrupting services provided by the router ring duringthe configuration change operation.

According to an aspect of the invention there is provided a method ofmanaging configuration changes to a configuration of routers connectedin a ring network architecture. The configuration changes includeprovisioning changes to information provisioned on at least one of therouters and connectivity changes to connections between at least two ofthe routers. The method comprises automatically executing instructionsstored on a computer readable media, which when executed cause asequence of steps to be performed. The sequence includes locking therouters to prevent any alteration to information provisioned thereonthat is not related to the configuration changes; determining ports tobe affected by the connectivity changes; taking the ports out ofservice; indicating that the connectivity changes should be initiated;determining the connectivity changes are complete; bringing the portsinto service; and then unlocking the routers.

According to another aspect of the invention there is provided a serviceplatform for managing configuration changes to a configuration ofrouters connected in a ring network architecture. The configurationchanges include connectivity changes to connections between at least twoof the routers. The service platform includes a service applicationcomprising instructions stored on computer readable media which whenexecuted by the service platform provide means to effect a sequence ofactions when the service platform is communicatively coupled to anetwork management entity of the ring network architecture. The sequenceof actions comprises locking the routers to prevent any alteration toinformation provisioned thereon that is not related to the configurationchanges; determining ports to be affected by the connectivity changes;taking the ports out of service; indicating that the connectivitychanges should be initiated; determining the connectivity changes arecomplete; bringing the ports into service; and unlocking the routers.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing and other objects, features and advantages of theinvention will be apparent from the following more particulardescription of the preferred embodiments, as illustrated in the appendeddrawings, where:

FIG. 1 illustrates a network configuration including a service platform,that is in accordance with a first embodiment of the invention, formanaging changes to a configuration of IP/MPLS routers connected in aring network architecture; and

FIG. 2 illustrates a method, that is in accordance with a secondembodiment of the invention, of managing changes to a configuration ofIP/MPLS routers connected in a ring network architecture.

In the figures like features are denoted by like reference characters.

DETAILED DESCRIPTION

Referring to FIG. 1, a network configuration 10 includes an IP/MPLSnetwork, which for example could be a core network of a ServiceProvider. The IP/MPLS network 10 is communicatively connected to a firstring of routers Ring1 and to a second ring of routers Ring2 such datapacket traffic can be communicated between the first and second routerrings Ring1, Ring2 via the IP/MPLS network 10. The first router ringRing1 includes a group of four routers connected in a ring networkarchitecture by a respective bidirectional link between adjacentrouters. That is, a first router R1 and a second router R2 are connectedby a first bidirectional link L1. Similarly, the second router R2 and athird router R3 are connected by a second bidirectional link L2; thethird router R3 and a fourth router R4 are connected by a thirdbidirectional link L3, and the fourth and first routers R4, R1 areconnected by a fourth bidirectional link L4. The four bidirectionallinks L1 to L4 would each typically comprise two unidirectional links sothat data packet traffic can be routed around the first router ringRing1 in both directions, e.g. clockwise and counterclockwise, as istypical with ring network architectures. Furthermore, in the event thatone of the four routers R1 to R4 or four links L1 to L4 becomesinoperative, the bidirectional property of the first router ring Ring1can be used to route data packet traffic around the inoperative routeror link. The first router ring Ring1 is communicatively connected to theIP/MPLS network by a fifth link L5, which is also a bidirectional link.A typical implementation of the links L1 to L5 is fiber optic cables,although electrical cables and even wireless channels could be used.

Similar to the first router ring Ring1, the second router ring Ring2also includes a group of four routers connected in a ring networkarchitecture by a respective bidirectional link between adjacentrouters. That is, a sixth router R6 and a seventh router R7 areconnected by a sixth bidirectional link L6. Similarly, the seventhrouter R7 and an eighth router R8 are connected by a seventhbidirectional link L7; the eighth router R8 and a ninth router R9 areconnected by an eighth bidirectional link L8, and the ninth and sixthrouters R9, R6 are connected by a ninth bidirectional link L9. Thebidirectional links L6 to L9 of the second router ring Ring2 would eachtypically comprise two unidirectional links so that data packet trafficcan be routed around the second router ring Ring2 in both directions.Furthermore, in the event that one of the routers R6 to R9 or links L6to L9 of the second router ring Ring2 becomes inoperative, thebidirectional property of the second router ring Ring2 can be used toroute data packet traffic around the inoperative router or link. Thesecond router ring Ring2 is communicatively connected to the IP/MPLSnetwork by a tenth link L10, which is also a bidirectional link. Atypical implementation of the links L6 to L10 of the second router Ring2is fiber optic cables, although electrical cables and even wirelesschannels could be used. It is not a requirement that all links of agiven router ring Ring1, Ring2 or connecting one of the router ringsRing1, Ring2 to the IP/MPLS network 10 by of the same type, e.g. opticalfiber cable, electrical cable, and wireless channel.

Although not shown in FIG. 1 for simplicity sake, typically there wouldbe thousands of router rings similar to the first and second routerrings Ring1, Ring2 communicatively connected to the IP/MPLS network 12.MPLS label switched paths (LSPs) or pseudowire connections, for example,would be provisioned to provide communicative connectivity betweencertain router rings, so that data packet traffic can be communicatedbetween those router rings as required. Furthermore, for additionalprotection against failures, additional links communicatively connectinga router ring to the IP/MPLS network 12 could be provided. For example,the first router ring Ring1 could be connected to the IP/MPLS network 12via a bidirectional link between the fourth router R4 and the IP/MPLSnetwork 12.

FIG. 1 depicts two configuration change scenarios. A first scenarioinvolves insertion of a fifth router R5 into the first router ring Ring1at a location X in the second link L2. This configuration change willaffect the second link L2 and two ports to which it is attached; a firstport P1 at the second router R2 and a second port P2 at the third routerR3. Specifically, the insertion of the fifth router R5 will involvecutting the second link L2 at the location X and inserting the fifthrouter R5 there. A second scenario involves removal of the eighth routerR8 from the second router ring Ring2. This configuration change willaffect the seventh and eighth links L7, L8 and a third port P3 at theseventh router R7 to which the seventh link L7 is attached and a fourthport P4 at the ninth router R9 to which the eight link L8 is attached.Specifically, removal of the eighth router R8 will involve splicing orotherwise connecting the seventh and eighth links L7, L8 to each otherat ends that were previously connected to the eighth router R8 afterthat router is removed from the second router ring Ring2. The stepsperformed to accomplish both of these configuration change scenarios aredescribed later in more detail with respect to an embodiment of a methodof managing changes to a configuration of IP/MPLS routers connected in aring network architecture.

Still referring to FIG. 1, the network configuration 10 includes amanagement entity 14 that is communicatively coupled to the IP/MPLSnetwork 12 via a connection 16. The management entity 14 would typicallybe a network management system capable of performing operation,administration and maintenance (OAM) type functions on network elementsin the IP/MPLS network 12 and the routers R1 to R9. This functionalityof the management entity 14 includes the capability to receive reportsof equipment, service, and provisioning related events from networkelements of the MPLS network 12, including event reports from therouters regarding operational status of their respective ports, e.g. P1to P4, and links, e.g. L1 to L10, connected to the routers, among otherthings. The management entity 14 would typically use simple networkmanagement protocol (SNMP) messages communicated over the connection 16to carry out the OAM functions.

The network configuration 10 also includes a service platform 18 that iscommunicatively coupled to the management entity 14 via an openoperating system (OS) interface 20. Using the open OS interface 20, theservice platform 18 has access to event notifications 22, which includeevent notifications related to the event reports from the networkelements. Further using the open OS interface 20 the service platform 18can issue commands 24 to the management entity 14 including commands toeffect provisioning changes at the routers and operational status ofrouter ports, e.g. P1 to P4, and links, e.g. L1 to L10, connected to therouters, e.g. R1 to R9. In a preferred embodiment, these commands 24 arein the form of extensible markup language (XML) messages and the open OSinterface 20 is an XML interface; although other types of messages andinterfaces could be used. The network management entity receives the XMLmessages, interprets their meaning, and in response communicates withthe routers R1 to R9 using SNMP messages to make the desiredprovisioning and operational status changes indicated by the XMLmessages. Messaging from the management entity 14 to the serviceplatform 18, including information in event notifications 22, is also inthe form of XML messages in the preferred embodiment. The serviceplatform 18 would typically be a laptop or desktop computer orworkstation.

The service platform 18 executes a service application 26 that is incommunication with a service database 28 on the service platform 18,although the service database 28 could also reside on the managemententity 14 with access to it given by the open OS interface 20. Theservice application 26 is a software program that embodies a method ofmanaging changes to a configuration of IP/MPLS routers connected in aring network architecture in accordance with an embodiment of theinvention. The service application 26 accesses the service database 28to retrieve costumer-specific information and information pertinent to arouter ring when generating a configuration file for a router to beinserted into a router ring. The service database 28 may also includevendor-specific information pertaining to various network managementsystems, in particular to vendor-specific commands to be used with suchsystems. The service application 26 accesses such information from theservice database 28 to provide a command interpreter function thatenables the service platform to be compatible with various networkmanagement systems from different vendors. Additionally, this commandinterpreter function, aided by other translation related information inthe service database 28, can be extended to provide communicationcapabilities to other types of OS interfaces.

Referring to FIG. 2, a method 200 of managing configuration changes to aconfiguration of IP/MPLS routers connected in a ring networkarchitecture will now be described with additional reference to FIG. 1.The configuration changes include provisioning changes to informationprovisioned on one or more of the routers and connectivity changes toone or more connections between the routers, such as provided by linksL1 to L10 shown in FIG. 1. The method 200 includes receiving 202 aconfiguration change request. The request includes identification of therouter ring to be affected by the change, and, in the case where thatrouter is to be removed from the ring, identification of the router tobe removed, or, in the case where a router is to be inserted into therouter ring, identification of two adjacent routers between which therouter is to be inserted. The configuration change request wouldpreferably be received by the service application 26, but it could alsobe received by the management entity 14, in which case theaforementioned router ring and router identification would be forwardedto the service application 26 via the open OS interface 20.

A determination 204 is then made whether the requested configurationchange involves inserting a router into the router ring. In theaffirmative case, a configuration file is generated 206 for the routerto be inserted. The configuration file is generated by the serviceapplication 26 using information from the service database 28, such ascustomer specific information pertinent to the router ring, andoptionally or additionally, other information retrieved from themanagement entity 14 via the open OS interface 20. The configurationfile is sent 208 to a field technician or otherwise made available forloading 210 into the router to be inserted. Optionally or additionallyto sending the configuration file to the field technician, the serviceapplication 26 could simply provide an indication, such as anotification displayed by the service platform 18, that theconfiguration file is ready. Other types of notification such as ane-mail, an instant message sent to the field technician or an operatorof the management entity 14 could also be used.

A determination 212 is then made whether the router to be inserted isconfigured and ready to be inserted. That is, a determination is madewhether the change procedure can be initiated. This determination wouldtypically be made based on a reply from the field technician to aquestion of that effect made, and the answer received, via themanagement entity 14 or preferably the service application 26. In theaffirmative case, the router ring is locked 214 so as to prevent anyprovisioning or other configuration changes that are not related to thepresent configuration change.

A determination 216 of the link to be affected, in the case of a routerinsertion, or links to be affected, in the case of a router removal, isthen made. Preferably this determination is made based on routeridentification information included in the received configuration changerequest. An advantage of making this determination rather than acceptingit as input from an operator or field technician is that doing soreduces the risk of data entry errors as well as providing informationfrom another source that can be used later when validating theconfiguration changes. For further clarity, any link to be affected isone that will undergo a physical connectivity change as a result of theconnectivity changes that included in the configuration changes.

A determination 218 of the ports attached to the link, or links, to beaffected is then made. Similar to the determination of the link or linksto be affected, the present determination of the ports attached to thesubject link or links is also made based on router identificationinformation included in the received configuration change request, andhas a similar advantage of being useful in later validation ofconfiguration changes.

The attached ports determined in the previous step are then taken out ofservice 220. As a result of taking these ports out of service, trafficprotection functionality present on the routers and supported by thenetwork architecture of the router ring reroutes data packet trafficaround these out-of-service ports, thereby avoiding any disruption toservices carried by the traffic.

It should be appreciated that it is not necessary to first determine thelinks or links to be affected in order to determine which ports to takeout of service. For example, the latter could be determined frominformation in the configuration change request, or simply specified tothe service application 26 by the field technician. In those cases someembodiments may omit the step of determining 218 the link or links to beaffected.

The field technician is instructed 222 to make connectivity changes inthe field to the router ring configuration. In the case of a routerinsertion, these connectivity changes include cutting the link to beaffected at the location where the router is to be inserted andconnecting each cut end of the link to a respective port of that router.In the case where a router is to be removed, these connectivity changesinclude removing that router by disconnecting the links to be affectedfrom their respective attached ports of that router and connecting theresulting disconnected ends of those links to each other.

Regarding the foregoing connectivity changes it should be noted in bothcases that the aforementioned links are bidirectional, hence eachcomprises two unidirectional links, and that care should be taken whencutting or splicing links to preserve the directionality of the affectedunidirectional links. Likewise, the aforementioned ports arebidirectional, each comprising a transmit and a receive port, and thatcare should be taken to abide by the directionality of theunidirectional links when connecting these links to the transmit andreceive ports.

Further regarding the connectivity changes, the field technician isinstructed 222 to make the changes by a notification generated by theservice application 26 and displayed at the service platform 18 ormanagement entity 14. In the case of the former the service platform 18could be co-located with the field technician, e.g. the service platform18 could be a laptop computer or other portable computer system at thedisposal of the field technician, and in the case of the latter thenotification could be relayed by an operator of the management entity14, e.g. via a cell phone call. Generally, an indication when theconnectivity changes can be initiated is provided. Other ways ofcommunicating the notification to and receiving responses from the fieldtechnician are possible such as via e-mail or instant messaging and maybe used in embodiments of the invention.

The service application 26 makes a determination 224 that theconnectivity changes are complete. Preferably this determinationincludes receiving a notification from the field technician when theconnectivity changes are complete. However, the service application 26could also continuously monitor connectivity of the router ring to makethis determination and optionally or additionally query the fieldtechnician or operator of the management entity 14 for confirmation tothat effect. Again, as mentioned with the step of instructing 222 thetechnician to make the connectivity changes, receiving a notificationthat these changes have been made can be realized in many ways.Preferably, the service platform 18 would be a laptop computerco-located with the field technician and the notification of the changesbeing complete would be realized by the technician providing informationto that effect to the service application 26.

Any provisioning changes that are included in the configuration changescan be made before or after the connectivity changes are complete, oreven while the connectivity changes are being made. The serviceapplication 26 will not attempt to validate the configuration changesuntil both the provisioning changes and connectivity changes have beencompleted.

The configuration changes are validated 226 by the service application26 to confirm an absence of errors before bringing the attached portsinto service. For example, to validate the configuration changes theservice application 26 compares links and ports actually affected by theconfiguration changes to links and ports that were previously determined216, 218 to be affected by the configuration changes. In the case wherethis comparison indicates a mismatch, it is possible that a router wasinserted into the router ring in a wrong location, or a router removalwas performed on the wrong router. Additionally, in cases the where theconfiguration file was generated 206 by the service application 26, theconfiguration changes, e.g. those on an inserted router, can be comparedto information in the generated configuration file. In the case wherethis comparison indicates a mismatch, it is possible that a wrong routerwas inserted, or the inserted router was not loaded with the generatedconfiguration file, among other possible error scenarios.

As an outcome of various comparison and tests involved in validating 226the configuration changes, a determination 228 is made whether anyconfiguration errors are present. In the affirmative case these errorsare preferably reported 230 by the service application 26, however theservice application may simply report a validation failure, i.e. afailure to confirm an absence of errors. As with the instruction anddetermination steps 222, 224, reporting 230 errors can be accomplishedin numerous ways involving the service platform 18 and management entity14, of these, it is preferable have the service application 26 do thereporting via the service platform 18.

If there are no configuration errors to report 230, the serviceapplication 26 causes the attached ports to be brought into service,otherwise the method terminates. Alternatively to the latter, the methodcould return to the step of instructing 222 the technician to makeconnectivity changes. In the previously described router insertionexample the attached ports are the first and second ports P1, P2, and inthe router removal example these attached ports are the third and fourthports P3, P4. The service application 26 causes the attached ports to bebrought into service by sending commands 24 to the management entity 14over the OS interface 20. Any additional actions taken on resources orentities such as software processes that need to be started,initialized, rebooted or otherwise affected to cause the configurationchanges made to the router ring to be put into an operational state arelikewise initiated by the service application 26. The method then endsby unlocking 234 the router ring to provisioning changes or otherchanges not related to the present configuration changes, therebyremoving the condition instantiated when the router ring was previouslylocked 214.

Numerous modifications, variations and adaptations may be made to theembodiments of the invention described above without departing from thescope of the invention, which is defined in the claims. For example,regarding the described method embodiment, the intervening steps betweenreceiving a configuration change request and determining that the changeprocedure is ready to be initiated could be omitted in embodiments whereproviding a router to be inserted with a configuration file isaccomplished in another way. Furthermore, the steps of determining thelink or links to be affected and determining their attached ports couldbe omitted in embodiments where this information is included in theconfiguration change request. These modifications to the describedmethod embodiment would also result in consequent changes to thevalidation step, such as using the identification of links and ports tobe affected obtained from the configuration change request rather thandetermining this information from another source.

1. A method of managing configuration changes to a configuration ofrouters connected in a ring network architecture, the configurationchanges including provisioning changes to information provisioned on atleast one of the routers and connectivity changes to connections betweenat least two of the routers, the method comprising: executingautomatically, instructions stored on a non-transitory computer-readablemedium, the instructions when executed causing a sequence of steps to beperformed, the sequence comprising: determining that the configurationchanges include inserting a router; generating a configuration file forthe router to be inserted; indicating the configuration file is ready tobe loaded into the router to be inserted; determining the router to beinserted is ready for insertion into the ring network architecture;locking the routers to prevent any alteration to information provisionedthereon that is not related to the configuration changes; determiningports to be affected by the connectivity changes; taking the ports outof service; indicating that the connectivity changes should beinitiated; determining the connectivity changes are complete; bringingthe ports into service; and unlocking the routers.
 2. The method ofclaim 1, wherein the sequence further comprises: subsequent todetermining the connectivity changes are complete, validating theconfiguration changes to confirm an absence of errors prior to bringingthe ports into service.
 3. The method of claim 1, wherein the sequencefurther comprises: prior to the step of locking, receiving aconfiguration change request related to the configuration changes,wherein the step of determining ports further comprises usinginformation in the configuration change request.
 4. The method of claim3, wherein the step of validating further comprises: using informationin the configuration change request.
 5. The method of claim 1, whereinthe step of validating further comprises: using information in theconfiguration file.
 6. The method of claim 1, wherein the step ofvalidating further comprises: responsive to a failure to confirm anabsence of errors, reporting the failure; and terminating execution ofthe sequence.
 7. The method of claim 3, wherein the step of determiningports further comprises: determining any links to be affected by theconnectivity changes.
 8. The method of claim 7, wherein the step ofdetermining any links further comprises: using information in theconfiguration change request.
 9. The method of claim 1, wherein therouters comprise IP/MPLS routers.
 10. A service platform for managingconfiguration changes to a configuration of routers connected in a ringnetwork architecture, the configuration changes including connectivitychanges to connections between at least two of the routers, the serviceplatform comprising: a service application comprising instructionsstored on a non-transitory computer-readable medium that, when executedby the service platform, provide means to effect a sequence of actionswhen the service platform is communicatively coupled to a networkmanagement entity of the ring network architecture, the sequencecomprising: determining that the configuration changes include insertinga router; generating a configuration file for the router to be inserted;indicating the configuration file is ready to be loaded into the routerto be inserted; determining the router to be inserted is ready forinsertion into the ring network architecture; locking the routers toprevent any alteration to information provisioned thereon that is notrelated to the configuration changes; determining ports to be affectedby the connectivity changes; taking the ports out of service; indicatingthat the connectivity changes should be initiated; determining theconnectivity changes are complete; bringing the ports into service; andunlocking the routers.
 11. The service platform of claim 10, wherein thesequence further comprises: subsequent to determining the connectivitychanges are complete, validating the configuration changes to confirm anabsence of errors prior to bringing the ports into service.
 12. Theservice platform of claim 10, wherein the sequence further comprises:prior to locking, receiving a configuration change request related tothe configuration changes, wherein the step of determining ports furthercomprises using information in the configuration change request.
 13. Theservice platform of claim 12, wherein the step of validating furthercomprises: using information in the configuration change request. 14.The service platform of claim 10, wherein the step of validating furthercomprises: using information in the configuration file.
 15. The serviceplatform of claim 10, wherein the step of validating further comprises:responsive to a failure to confirm an absence of errors, reporting thefailure; and terminating execution of the sequence of operations. 16.The service platform of claim 12, wherein the step of determining portsfurther comprises: determining any links to be affected by theconnectivity changes.
 17. The service platform of claim 16, wherein thestep of determining any links further comprises: using information inthe configuration change request.
 18. The service platform of claim 10,wherein the instructions comprise command instructions for communicatingwith the network management entity over an operating system (OS)interface.
 19. The service platform of claim 18, further comprising: adatabase for translating the command instructions from a first format toa second format.
 20. The service platform of claim 10, wherein therouters comprise IP/MPLS routers.